package com.atguigu.gmall.product.mapper;

import com.atguigu.gmall.model.product.SpuSaleAttr;
import com.atguigu.gmall.model.product.SpuSaleAttrValue;
import com.atguigu.gmall.product.bean.SkuAllSaleValue;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


public interface SpuSaleAttrMapper extends BaseMapper<SpuSaleAttr> {

    List<SpuSaleAttr> getSpuAttrAndValue(Long spuId);


    /**
     * 按照skuid查出当前skuid所属的spu的所有销售属性值，
     * 并标识出那个是这个sku的
     * @param skuId
     * @return
     */
    List<SpuSaleAttrValue> getSpuSaleAttrVale(@Param("skuId") Long skuId);

    /**
     * 按照skuid查出当前skuid所属的spu的所有销售属性值，
     * 并标识出那个是这个sku的
     *
     * 以组合关系展示
     * SpuSaleAttr{
     *     颜色
     * }
     */
    List<SpuSaleAttr> getSpuSaleAttrWithValueAndSkuCheck(@Param("skuId") Long skuId);

    /**
     * 根据spuId 查到他下面所有的sku 对应的销售属性值
     * 方便切换
     * @param spuId
     * @return
     */
    List<SkuAllSaleValue> getSkuAllSaleValue(Long spuId);
}
